using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

namespace HumanElement.Xna
{
    public interface IViewport
    {
        /// <summary>
        /// Gets the depth buffer.
        /// 
        /// </summary>
        /// <value>The depth buffer.</value>
        Texture2D DepthBuffer { get; }

        /// <summary>
        /// Gets or sets the player.
        /// </summary>
        /// <value>The player.</value>
        PlayerIndex Player { get; set; }

        /// <summary>
        /// Gets the height.
        /// </summary>
        /// <value>The height.</value>
        float Height { get; }

        /// <summary>
        /// Gets the width.
        /// </summary>
        /// <value>The width.</value>
        float Width { get; }

        /// <summary>
        /// Gets the location.
        /// </summary>
        /// <value>The location.</value>
        Vector2 Location { get; }

        /// <summary>
        /// Gets the camera.
        /// </summary>
        /// <value>The camera.</value>
        ICamera Camera { get; }
    }
}